home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 34.zip / BS1 part 34 / Aztec C 5.0a disk 1.adf / include / functions.h < prev    next >
C/C++ Source or Header  |  1990-01-09  |  25KB  |  565 lines

  1. /* Copyright Manx Software Systems, Inc. 1989.  All rights reserved */
  2.  
  3. #ifndef __FUNCTIONS_H
  4. #define __FUNCTIONS_H
  5. #include <libraries/dos.h>
  6.  
  7. typedef void (*PVF)();
  8.  
  9. long Chk_Abort(void);
  10. extern int Enable_Abort;
  11.  
  12. /************** structs ****************************/
  13. struct cLPool;
  14. struct InputEvent;
  15. struct Device;
  16. struct KeyMap;
  17. struct TextAttr;
  18. struct TextFont;
  19. struct FileHandle;
  20. struct FileLock;
  21. struct FileInfoBlock;
  22. struct InfoData;
  23. struct Process;
  24. struct Library;
  25. struct MemList;
  26. struct Resident;
  27. struct Interrupt;
  28. struct MemHeader;
  29. struct List;
  30. struct Node;
  31. struct Task;
  32. struct MsgPort;
  33. struct Message;
  34. struct IORequest;
  35. struct MiscResource;
  36. struct Semaphore;
  37. struct SignalSemaphore;
  38. struct IOStdReq;
  39. struct ConfigDev;
  40. struct CurrentBinding;
  41. struct DeviceNode;
  42. struct BitMap;
  43. struct RastPort;
  44. struct Bob;
  45. struct VSprite;
  46. struct ViewPort;
  47. struct GelsInfo;
  48. struct AnimOb;
  49. struct View;
  50. struct bltnode;
  51. struct AreaInfo;
  52. struct UCopList;
  53. struct SimpleSprite;
  54. struct Layer;
  55. struct TmpRas;
  56. struct Region;
  57. struct Rectangle;
  58. struct CopList;
  59. struct cprlist;
  60. struct ColorMap;
  61. struct WBObject;
  62. struct DiskObject;
  63. struct FreeList;
  64. struct Window;
  65. struct Gadget;
  66. struct Screen;
  67. struct Border;
  68. struct Image;
  69. struct Requester;
  70. struct Preferences;
  71. struct Menu;
  72. struct MenuItem;
  73. struct NewScreen;
  74. struct NewWindow;
  75. struct IntuiText;
  76. struct Remember;
  77. struct Layer_Info;
  78. struct Layer;
  79. struct ClipRect;
  80. struct timeval;
  81.  
  82. /************** CList ******************************/
  83.  
  84. long InitCLPool(struct cLPool *cLPool,long size);
  85. long AllocCList(long cLPool);
  86. void FreeCList(long cList);
  87. void FlushCList(long cList);
  88. long SizeCList(long cList);
  89. long PutCLChar(long cList,long byte);
  90. long GetCLChar(long cList);
  91. long UnGetCLChar(long cList,long byte);
  92. long UnPutCLChar(long cList);
  93. long PutCLWord(long cList,long word);
  94. long GetCLWord(long cList);
  95. long UnGetCLWord(long cList,long word);
  96. long UnPutCLWord(long cList);
  97. long PutCLBuf(long cList,char *buffer,long length);
  98. long GetCLBuf(long cList,char *buffer,long maxlength);
  99. long MarkCList(long cList, long mark);
  100. long IncrCLMark(long cList);
  101. long PeekCLMark(long cList);
  102. long SplitCList(long cList);
  103. long CopyCList(long cList);
  104. long SubCList(long cList,long index,long length);
  105. long ConcatCList(long sourceCList,long destCList);
  106.  
  107. /************** Console ****************************/
  108.  
  109. struct InputEvent * CDInputHandler(struct InputEvent *event,struct Device *device);
  110. long RawKeyConvert(struct InputEvent *event,char *buffer,long length,struct KeyMap *keyMap);
  111.  
  112. /************** DiskFont ***************************/
  113.  
  114. struct TextFont * OpenDiskFont(struct TextAttr *textAttr);
  115. long AvailFonts(char *buffer,long bufBytes,long flags);
  116.  
  117. /************** Dos ********************************/
  118.  
  119. BPTR Open(const char *name, long accessMode);
  120. void Close(BPTR file);
  121. long Read(BPTR file, char *buffer, long length);
  122. long Write(BPTR file, char *buffer, long length);
  123. BPTR Input(void);
  124. BPTR Output(void);
  125. long Seek(BPTR file, long position, long offset);
  126. long DeleteFile(const char *name);
  127. long Rename(const char *oldName, const char *newName);
  128. BPTR Lock(const char *name, long type);
  129. void UnLock(BPTR);
  130. BPTR DupLock(BPTR);
  131. long Examine(BPTR lock, BPTR fileInfoBlock);
  132. long ExNext(BPTR lock, BPTR fileInfoBlock);
  133. long Info(BPTR lock, struct InfoData *parameterBlock);
  134. BPTR CreateDir(const char *name);
  135. BPTR CurrentDir(struct FileLock *lock);
  136. long IoErr(void);
  137. struct Process * CreateProc(const char *name, long pri, long segList, long stackSize);
  138. void Exit(long returnCode);
  139. long LoadSeg(const char *fileName);
  140. long UnLoadSeg(long segList);
  141. long GetPacket(long wait);
  142. long QueuePacket(long *packet);
  143. struct Process * DeviceProc(const char *name);
  144. long SetComment(const char *name, const char *comment);
  145. long SetProtection(const char *name, long mask);
  146. long * DateStamp(long *date);
  147. void Delay(long timeout);
  148. long WaitForChar(struct FileHandle *file, long timeout);
  149. struct FileLock * ParentDir(struct FileLock *lock);
  150. long IsInteractive(struct FileHandle *file);
  151. long Execute(const char *string, struct FileHandle *input, struct FileHandle *output);
  152.  
  153. /************** Exec *******************************/
  154.  
  155. void Supervisor(void);
  156. void ExitIntr(void);
  157. void Schedule(void);
  158. void Reschedule(void);
  159. void Switch(void);
  160. void Dispatch(void);
  161. void Exception(void);
  162. void InitCode(long startClass, long version);
  163. void InitStruct(short *initTable, void *memory, long size);
  164. struct Library * MakeLibrary(PVF funcInit[], short *structInit, struct Library *(*libInit)(), long dataSize, struct MemList *codeSize);
  165. long MakeFunctions(char *target, PVF functionArray[], char *funcDispBase);
  166. struct Resident * FindResident(const char *name);
  167. void InitResident(struct Resident *resident, long segList);
  168. long Alert(long alertNum, long parameters);
  169. void Debug(void);
  170. void Disable(void);
  171. void Enable(void);
  172. void Forbid(void);
  173. void Permit(void);
  174. long SetSR(long newSR, long mask);
  175. long SuperState(void);
  176. void UserState(void *sysStack);
  177. struct Interrupt * SetIntVector(long intNumber, struct Interrupt *interrupt);
  178. void AddIntServer(long intNumber,struct Interrupt *interrupt);
  179. void RemIntServer(long intNumber, struct Interrupt *interrupt);
  180. void Cause(struct Interrupt *interrupt);
  181. void * Allocate(struct MemHeader *freeList, long byteSize);
  182. void Deallocate(struct MemHeader *freeList, void *memoryBlock, long byteSize);
  183. void * AllocMem(long byteSize, long requirements);
  184. void * AllocAbs(long byteSize, void *location);
  185. void FreeMem(void *memoryBlock, long byteSize);
  186. long AvailMem(long requirements);
  187. struct MemList * AllocEntry(struct MemList *entry);
  188. void FreeEntry(struct MemList *entry);
  189. void Insert(struct List *list, struct Node *node, struct Node *pred);
  190. void AddHead(struct List *list, struct Node *node);
  191. void AddTail(struct List *list, struct Node *node);
  192. void Remove(struct Node *node);
  193. struct Node * RemHead(struct List *list);
  194. struct Node * RemTail(struct List *list);
  195. void Enqueue(struct List *list, struct Node *node);
  196. struct Node * FindName(struct List *list, const char *name);
  197. void AddTask(struct Task *task, void *initPC, void *finalPC);
  198. void RemTask(struct Task *task);
  199. struct Task * FindTask(const char *name);
  200. long SetTaskPri(struct Task *task, long priority);
  201. long SetSignal(long newSignals, long signalSet);
  202. long SetExcept(long newSignals, long signalSet);
  203. long Wait(long signalSet);
  204. void Signal(struct Task *task, long signalSet);
  205. long AllocSignal(long signalNum);
  206. void FreeSignal(long signalNum);
  207. long AllocTrap(long trapNum);
  208. void FreeTrap(long trapNum);
  209. void AddPort(struct MsgPort *port);
  210. void RemPort(struct MsgPort *port);
  211. void PutMsg(struct MsgPort *port, struct Message *message);
  212. struct Message * GetMsg(struct MsgPort *port);
  213. void ReplyMsg(struct Message *message);
  214. struct Message * WaitPort(struct MsgPort *port);
  215. struct MsgPort * FindPort(const char *name);
  216. void AddLibrary(struct Library *library);
  217. long RemLibrary(struct Library *library);
  218. void * OldOpenLibrary(const char *libName);
  219. void CloseLibrary(void *library);
  220. PVF SetFunction(struct Library *library, long funcOffset, PVF funcEntry);
  221. void SumLibrary(struct Library *library);
  222. void AddDevice(struct Device *device);
  223. long RemDevice(struct Device *device);
  224. long OpenDevice(const char *devName, long unit, struct IORequest *ioRequest, long flags);
  225. void CloseDevice(struct IORequest *ioRequest);
  226. long DoIO(struct IORequest *ioRequest);
  227. void SendIO(struct IORequest *ioRequest);
  228. struct IORequest * CheckIO(struct IORequest *ioRequest);
  229. long WaitIO(struct IORequest *ioRequest);
  230. unsigned char AbortIO(struct IORequest *ioRequest);
  231. void AddResource(struct MiscResource *resource);
  232. void RemResource(struct MiscResource *resource);
  233. struct MiscResource * OpenResource(const char *resName, long version);
  234. void RawIOInit(void);
  235. long RawMayGetChar(void);
  236. void RawPutChar(long c);
  237. void RawDoFmt(const char *FormatString, char *DataStream, PVF PutChProc, long PutChData);
  238. long GetCC(void);
  239. long TypeOfMem(char *address);
  240. long Procure(struct Semaphore *semaport, struct Message *bidMsg);
  241. void Vacate(struct Semaphore *semaport);
  242. void * OpenLibrary(const char *libName, long version);
  243. void InitSemaphore(struct SignalSemaphore *sigSem);
  244. void ObtainSemaphore(struct SignalSemaphore *sigSem);
  245. void ReleaseSemaphore(struct SignalSemaphore *sigSem);
  246. long AttemptSemaphore(struct SignalSemaphore *sigSem);
  247. void ObtainSemaphoreList(struct List *sigSemList);
  248. void ReleaseSemaphoreList(struct List *sigSemList);
  249. struct SignalSemaphore * FindSemaphore(const char *name);
  250. void AddSemaphore(struct SignalSemaphore *sigSem);
  251. void RemSemaphore(struct SignalSemaphore *sigSem);
  252. void SumKickData(void);
  253. long AddMemList(long size, long attributes, long pri, void *base, const char *name);
  254. void CopyMem(char *source, char *dest, long size);
  255. void CopyMemQuick(char *source, char *dest, long size);
  256.  
  257. /* Not in ROM */
  258. struct IORequest * CreateExtIO(struct MsgPort *ioReplyPort, long size);
  259. struct MsgPort* CreatePort(const char *name,long pri);
  260. struct IOStdReq * CreateStdIO(struct MsgPort *mp);
  261. struct Task * CreateTask(const char *name,long pri,void *start_pc,long stksiz);
  262. void DeleteExtIO (struct IORequest *ioReq);
  263. void DeletePort(struct MsgPort *port);
  264. void DeleteStdIO(struct IOStdReq *iop);
  265. void DeleteTask(struct Task *tp);
  266. void BeginIO(struct IORequest *ioRequest);
  267. void NewList(struct List *list);
  268.  
  269.  
  270. /************** Expansion **************************/
  271.  
  272. void AddConfigDev(struct ConfigDev *configDev);
  273. long AllocBoardMem(long slotSpec);
  274. struct ConfigDev * AllocConfigDev(void);
  275. long AllocExpansionMem(long numSlots,long SlotAlign,long SlotOffset);
  276. long ConfigBoard(long board,struct ConfigDev *configDev);
  277. long ConfigChain(long baseAddr);
  278. struct ConfigDev * FindConfigDev(struct ConfigDev *oldConfigDev,long manufacturer,long product);
  279. void FreeBoardMem(long startSlot,long slotSpec);
  280. void FreeConfigDev(struct ConfigDev *configDev);
  281. void FreeExpansionMem(long startSlot,long numSlots);
  282. long ReadExpansionByte(const char *board,long offset);
  283. long ReadExpansionRom(const char *board,struct ConfigDev *configDev);
  284. void RemConfigDev(struct ConfigDev *configDev);
  285. long WriteExpansionByte(const char *board,long offset,long byte);
  286. void ObtainConfigBinding(void);
  287. void ReleaseConfigBinding(void);
  288. void SetCurrentBinding(struct CurrentBinding *currentBinding,long bindingSize);
  289. long GetCurrentBinding(struct CurrentBinding *currentBinding,long bindingSize);
  290. struct DeviceNode * MakeDosNode(long *parmPacket);
  291. long AddDosNode(long bootPri,long flags,struct DeviceNode *dosNode);
  292.  
  293. /************** Graphics ***************************/
  294.  
  295. long BltBitMap(struct BitMap *srcBitMap, long srcX, long srcY, struct BitMap *destBitMap, long destX, long destY, long sizeX, long sizeY, long minterm, long mask, long tempA);
  296. void BltTemplate(char *source, long srcX, long srcMod, struct RastPort *destRastPort, long destX, long destY, long sizeX, long sizeY);
  297. void ClearEOL(struct RastPort *rastPort);
  298. void ClearScreen(struct RastPort *rastPort);
  299. long TextLength(struct RastPort *rastPort, const char *string, long count);
  300. long Text(struct RastPort *rastPort, const char *string, long count);
  301. void SetFont(struct RastPort *rastPort, struct TextFont *textFont);
  302. struct TextFont * OpenFont(struct TextAttr *textAttr);
  303. void CloseFont(struct TextFont *textFont);
  304. long AskSoftStyle(struct RastPort *rastPort);
  305. long SetSoftStyle(struct RastPort *rastPort, long style, long enable);
  306. void AddBob(struct Bob *bob, struct RastPort *rastPort);
  307. void AddVSprite(struct VSprite *vSprite, struct RastPort *rastPort);
  308. void DoCollision(struct RastPort *rastPort);
  309. void DrawGList(struct RastPort *rastPort, struct ViewPort *viewPort);
  310. void InitGels(struct VSprite *dummyHead, struct VSprite *dummyTail, struct GelsInfo *gelsInfo);
  311. void InitMasks(struct VSprite *vSprite);
  312. void RemIBob(struct Bob *bob, struct RastPort *rastPort, struct ViewPort *viewPort);
  313. void RemVSprite(struct VSprite *vSprite);
  314. void SetCollision(long type, PVF routine, struct GelsInfo *gelsInfo);
  315. void SortGList(struct RastPort *rastPort);
  316. void AddAnimOb(struct AnimOb *obj, struct AnimOb **animationKey, struct RastPort *rastPort);
  317. void Animate(struct AnimOb **animationKey, struct RastPort *rastPort);
  318. long GetGBuffers(struct AnimOb *animationObj, struct RastPort *rastPort, long doubleBuffer);
  319. void InitGMasks(struct AnimOb *animationObj);
  320. void DrawEllipse(struct RastPort *rastPort, long cx, long cy, long a, long b);
  321. long AreaEllipse(struct RastPort *rastPort, long cx, long cy, long a, long b);
  322. void LoadRGB4(struct ViewPort *viewPort, unsigned short *colors, long count);
  323. void InitRastPort(struct RastPort *rastPort);
  324. void InitVPort(struct ViewPort *viewPort);
  325. void MrgCop(struct View *view);
  326. void MakeVPort(struct View *view, struct ViewPort *viewPort);
  327. void LoadView(struct View *view);
  328. void WaitBlit(void);
  329. void SetRast(struct RastPort *rastPort, long color);
  330. void Move(struct RastPort *rastPort, long x, long y);
  331. void Draw(struct RastPort *rastPort, long x, long y);
  332. long AreaMove(struct RastPort *rastPort,long x,long y);
  333. long AreaDraw(struct RastPort *rastPort,long x,long y);
  334. void AreaEnd(struct RastPort *rastPort);
  335. void WaitTOF(void);
  336. void QBlit(struct bltnode *blit);
  337. void InitArea(struct AreaInfo *areaInfo, short *vectorTable, long vectorTableSize);
  338. void SetRGB4(struct ViewPort *viewPort,long index,long r,long g,long b);
  339. void QBSBlit(struct bltnode *blit);
  340. void BltClear(char *memory,long size,long flags);
  341. void RectFill(struct RastPort *rastPort,long xl,long yl,long xu,long yu);
  342. void BltPattern(struct RastPort *rastPort,char *ras,long xl,long yl,long maxX,long maxY,long fillBytes);
  343. long ReadPixel(struct RastPort *rastPort,long x,long y);
  344. void WritePixel(struct RastPort *rastPort,long x,long y);
  345. long Flood(struct RastPort *rastPort,long mode,long x,long y);
  346. void PolyDraw(struct RastPort *rastPort,long count,short *polyTable);
  347. void SetAPen(struct RastPort *rastPort,long pen);
  348. void SetBPen(struct RastPort *rastPort,long pen);
  349. void SetDrMd(struct RastPort *rastPort,long drawMode);
  350. void InitView(struct View *view);
  351. void CBump(struct UCopList *copperList);
  352. void CMove(struct UCopList *copperList,long *reg,long data);
  353. void CWait(struct UCopList *copperList,long x,long y);
  354. long VBeamPos(void);
  355. void InitBitMap(struct BitMap *bitMap,long depth,long width,long height);
  356. void ScrollRaster(struct RastPort *rastPort,long dX,long dY,long minx,long miny,long maxx,long maxy);
  357. void WaitBOVP(struct ViewPort *viewport);
  358. long GetSprite(struct SimpleSprite *simplesprite, long num);
  359. void FreeSprite(long num);
  360. void ChangeSprite(struct ViewPort *vp,struct SimpleSprite *simplesprite,short *data);
  361. void MoveSprite(struct ViewPort *viewport,struct SimpleSprite *simplesprite,long x,long y);
  362. void LockLayerRom(struct Layer *layer);
  363. void UnlockLayerRom(struct Layer *layer);
  364. void SyncSBitMap(struct Layer *l);
  365. void CopySBitMap(struct Layer *l);
  366. void OwnBlitter(void);
  367. void DisownBlitter(void);
  368. void InitTmpRas(struct TmpRas *tmpras,char *buff,long size);
  369. void AskFont(struct RastPort *rastPort,struct TextAttr *textAttr);
  370. void AddFont(struct TextFont *textFont);
  371. long RemFont(struct TextFont *textFont);
  372. void * AllocRaster(long width,long height);
  373. void FreeRaster(void *planeptr,long width,long height);
  374. void AndRectRegion(struct Region *rgn,struct Rectangle *rect);
  375. void OrRectRegion(struct Region *rgn,struct Rectangle *rect);
  376. struct Region * NewRegion(void);
  377. long ClearRectRegion(struct Region *rgn, struct Rectangle *rect);
  378. void ClearRegion(struct Region *rgn);
  379. void DisposeRegion(struct Region *rgn);
  380. void FreeVPortCopLists(struct ViewPort *viewport);
  381. void FreeCopList(struct CopList *coplist);
  382. void ClipBlit(struct RastPort *srcrp,long srcX,long srcY,struct RastPort *destrp,long destX,long destY,long sizeX,long sizeY,long minterm);
  383. void XorRectRegion(struct Region *rgn,struct Rectangle *rect);
  384. void FreeCprList(struct cprlist *cprlist);
  385. struct ColorMap * GetColorMap(long entries);
  386. void FreeColorMap(struct ColorMap *colormap);
  387. long GetRGB4(struct ColorMap *colormap,long entry);
  388. void ScrollVPort(struct ViewPort *vp);
  389. void UCopperListInit(struct UCopList *copperlist,long num);
  390. void FreeGBuffers(struct AnimOb *animationObj,struct RastPort *rastPort,long doubleBuffer);
  391. long BltBitMapRastPort(struct BitMap *srcbm,long srcx,long srcy,struct RastPort *destrp,long destX,long destY,long sizeX,long sizeY,long minterm);
  392. long OrRegionRegion(struct Region *src,struct Region *dst);
  393. long XorRegionRegion(struct Region *src,struct Region *dst);
  394. long AndRegionRegion(struct Region *src,struct Region *dst);
  395. void SetRGB4CM(struct ColorMap *cm,long i,long r,long g,long b);
  396. void BltMaskBitMapRastPort(struct BitMap *srcbm,long srcx,long srcy,struct RastPort *destrp,long destX,long destY,long sizeX,long sizeY,long minterm,void *bltmask);
  397. void GraphicsReserved1(void);
  398. void GraphicsReserved2(void);
  399. long AttemptLockLayerRom(struct Layer *layer);
  400.  
  401. /* Not in ROM */
  402. #ifndef RemBob
  403. void RemBob(struct Bob *bob);
  404. void InitAnimate(struct AnimOb **animKey);
  405. #endif
  406. #ifndef SetOPen
  407. void SetOPen(struct RastPort *rp, long pen);
  408. void SetDrPt(struct RastPort *rp, long pattern);
  409. void SetWrMsk(struct RastPort *rp, long mask);
  410. void SetAfPt(struct RastPort *rp, unsigned short *pattern, long size);
  411. void BNDRYOFF(struct RastPort *rp);
  412. void CINIT(struct UCopList *c, long n);
  413. void CMOVE(struct UCopList *c, long a, long b);
  414. void CWAIT(struct UCopList *c, long a, long b);
  415. void CEND(struct UCopList *c);
  416. void DrawCircle(struct RastPort *rp, long cx, long cy, long r);
  417. long AreaCircle(struct RastPort *rp, long cx, long cy, long r);
  418. #endif
  419.  
  420.  
  421. /************** Icon *******************************/
  422.  
  423. struct WBObject * GetWBObject(const char *name);
  424. long PutWBObject(const char *name,struct WBObject *object);
  425. long GetIcon(const char *name,struct DiskObject *icon,struct FreeList *freelist);
  426. long PutIcon(const char *name,struct DiskObject *icon);
  427. void FreeFreeList(struct FreeList *freelist);
  428. void FreeWBObject(struct WBObject *WBObject);
  429. struct WBObject * AllocWBObject(void);
  430. void AddFreeList(struct FreeList *freelist,char *mem,long size);
  431. struct DiskObject * GetDiskObject(const char *name);
  432. long PutDiskObject(const char *name,struct DiskObject *diskobj);
  433. void FreeDiskObject(struct DiskObject *diskobj);
  434. char * FindToolType(char **toolTypeArray,const char *typeName);
  435. long MatchToolValue(char *typeString,char *value);
  436. char * BumpRevision(const char *newname,const char *oldname);
  437.  
  438. /************** Intuition **************************/
  439.  
  440. void OpenIntuition(void);
  441. struct InputEvent * Intuition(struct InputEvent *ievent);
  442. long AddGadget(struct Window *AddPtr,struct Gadget *gadget,long Position);
  443. long ClearDMRequest(struct Window *Window);
  444. void ClearMenuStrip(struct Window *Window);
  445. void ClearPointer(struct Window *Window);
  446. void CloseScreen(struct Screen *Screen);
  447. void CloseWindow(struct Window *Window);
  448. long CloseWorkBench(void);
  449. void CurrentTime(long *Seconds,long *Micros);
  450. long DisplayAlert(long AlertNumber,char *String,long Height);
  451. void DisplayBeep(struct Screen *Screen);
  452. long DoubleClick(long sseconds,long smicros,long cseconds,long cmicros);
  453. void DrawBorder(struct RastPort *RPort,struct Border *Border,long LeftOffset,long TopOffset);
  454. void DrawImage(struct RastPort *RPort,struct Image *Image,long LeftOffset,long TopOffset);
  455. void EndRequest(struct Requester *requester,struct Window *window);
  456. struct Preferences * GetDefPrefs(struct Preferences *preferences,long size);
  457. struct Preferences * GetPrefs(struct Preferences *preferences,long size);
  458. void InitRequester(struct Requester *req);
  459. struct MenuItem * ItemAddress(struct Menu *MenuStrip,long MenuNumber);
  460. void ModifyIDCMP(struct Window *Window, long Flags);
  461. void ModifyProp(struct Gadget *Gadget,struct Window *Ptr,struct Requester *Req,long Flags,long HPos,long VPos,long HBody,long VBody);
  462. void MoveScreen(struct Screen *Screen,long dx,long dy);
  463. void MoveWindow(struct Window *window,long dx,long dy);
  464. void OffGadget(struct Gadget *Gadget, struct Window *Ptr,struct Requester *Req);
  465. void OffMenu(struct Window *Window,long MenuNumber);
  466. void OnGadget(struct Gadget *Gadget,struct Window *Ptr,struct Requester *Req);
  467. void OnMenu(struct Window *Window,long MenuNumber);
  468. struct Screen *OpenScreen(struct NewScreen *OSargs);
  469. struct Window *OpenWindow(struct NewWindow *OWargs);
  470. struct Screen *OpenWorkBench(void);
  471. void PrintIText(struct RastPort *rp,struct IntuiText *itext,long left,long top);
  472. void RefreshGadgets(struct Gadget *Gadgets,struct Window *Ptr,struct Requester *Req);
  473. long RemoveGadget(struct Window *RemPtr,struct Gadget *Gadget);
  474. void ReportMouse(long Boolean, struct Window *Window);
  475. long Request(struct Requester *Requester,struct Window *Window);
  476. void ScreenToBack(struct Screen *Screen);
  477. void ScreenToFront(struct Screen *Screen);
  478. long SetDMRequest(struct Window *Window,struct Requester *req);
  479. void SetMenuStrip(struct Window *Window,struct Menu *Menu);
  480. void SetPointer(struct Window *Window,short *Pointer,long Height,long Width,long Xoffset,long Yoffset);
  481. void SetWindowTitles(struct Window *window,const char *windowtitle,const char *screentitle);
  482. void ShowTitle(struct Screen *Screen,long ShowIt);
  483. void SizeWindow(struct Window *window,long dx,long dy);
  484. struct View * ViewAddress(void);
  485. struct View * ViewPortAddress(struct Window *window);
  486. void WindowToBack(struct Window *window);
  487. void WindowToFront(struct Window *window);
  488. long WindowLimits(struct Window *window,long minwidth,long minheight,long maxwidth,long maxheight);
  489. struct Preferences * SetPrefs(struct Preferences *preferences,long size,long flag);
  490. long IntuiTextLength(struct IntuiText *itext);
  491. long WBenchToBack(void);
  492. long WBenchToFront(void);
  493. long AutoRequest(struct Window *Window,struct IntuiText *Body,struct IntuiText *PText,struct IntuiText *NText,long PFlag,long NFlag,long W,long H);
  494. void BeginRefresh(struct Window *Window);
  495. struct Window * BuildSysRequest(struct Window *Window,struct IntuiText *Body,struct IntuiText *PosText,struct IntuiText *NegText,long Flags,long W,long H);
  496. void EndRefresh(struct Window *Window,long Complete);
  497. void FreeSysRequest(struct Window *Window);
  498. void MakeScreen(struct Screen *Screen);
  499. void RemakeDisplay(void);
  500. void RethinkDisplay(void);
  501. void * AllocRemember(struct Remember **RememberKey,long Size,long Flags);
  502. void AlohaWorkbench(struct MsgPort *wbport);
  503. void FreeRemember(struct Remember **RememberKey,long ReallyForget);
  504. long LockIBase(long dontknow);
  505. void UnlockIBase(long IBLock);
  506. long GetScreenData(char *buffer,long size,long type,struct Screen *screen);
  507. void RefreshGList(struct Gadget *Gadgets,struct Window *Ptr,struct Requester *Req,long NumGad);
  508. long AddGList(struct Window *AddPtr,struct Gadget *Gadget,long Position,long NumGad,struct Requester *Requester);
  509. long RemoveGList(struct Window *RemPtr,struct Gadget *Gadget,long NumGad);
  510. void ActivateWindow(struct Window *Window);
  511. void RefreshWindowFrame(struct Window *Window);
  512. long ActivateGadget(struct Gadget *Gadgets,struct Window *Window,struct Requester *Req);
  513. void NewModifyProp(struct Gadget *Gadget,struct Window *Ptr,struct Requester *Req,long Flags,long HPos,long VPos,long HBody,long VBody,long NumGad);
  514.  
  515. /************** Layers *****************************/
  516.  
  517. void InitLayers(struct Layer_Info *li);
  518. struct Layer * CreateUpfrontLayer(struct Layer_Info *li,struct BitMap *bm,long x0,long y0,long x1,long y1,long flags,struct BitMap *bm2);
  519. struct Layer * CreateBehindLayer(struct Layer_Info *li,struct BitMap *bm,long x0,long y0,long x1,long y1,long flags,struct BitMap *bm2);
  520. long UpfrontLayer(struct Layer_Info *li,struct Layer *layer);
  521. long BehindLayer(struct Layer_Info *li,struct Layer *layer);
  522. long MoveLayer(struct Layer_Info *li,struct Layer *layer,long dx,long dy);
  523. long SizeLayer(struct Layer_Info *li,struct Layer *layer,long dx,long dy);
  524. void ScrollLayer(struct Layer_Info *li,struct Layer *layer,long dx,long dy);
  525. long BeginUpdate(struct Layer *layer);
  526. void EndUpdate(struct Layer *layer,long flag);
  527. void DeleteLayer(struct Layer_Info *li,struct Layer *layer);
  528. void LockLayer(struct Layer_Info *li,struct Layer *layer);
  529. void UnlockLayer(struct Layer *layer);
  530. void LockLayers(struct Layer_Info *li);
  531. void UnlockLayers(struct Layer_Info *li);
  532. void LockLayerInfo(struct Layer_Info *li);
  533. void SwapBitsRastPortClipRect(struct RastPort *rp,struct ClipRect *cr);
  534. struct Layer * WhichLayer(struct Layer_Info *li,long x,long y);
  535. void UnlockLayerInfo(struct Layer_Info *li);
  536. struct Layer_Info * NewLayerInfo(void);
  537. void DisposeLayerInfo(struct Layer_Info *li);
  538. void FattenLayerInfo(struct Layer_Info *li);
  539. void ThinLayerInfo(struct Layer_Info *li);
  540. long MoveLayerInFrontOf(struct Layer *layer_to_move,struct Layer *layer_to_be_infront_of);
  541. struct Region * InstallClipRegion(struct Layer *layer,struct Region *region);
  542.  
  543. /************** PotGo ******************************/
  544.  
  545. long AllocPotBits(long bits);
  546. void FreePotBits(long bits);
  547. void WritePotgo(long word,long mask);
  548.  
  549. /************** Timer ******************************/
  550.  
  551. void AddTime(struct timeval *dest,struct timeval *src);
  552. void SubTime(struct timeval *dest,struct timeval *src);
  553. long CmpTime(struct timeval *dest,struct timeval *src);
  554.  
  555. /************** Translator *************************/
  556.  
  557. long Translate(const char *inputString,long inputLength,char *outputBuffer,long bufferSize);
  558.  
  559. #ifndef __NO_PRAGMAS
  560. #include <pragmas.h>
  561. #endif
  562.  
  563. #endif
  564.  
  565.